using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.ModelConfiguration;
using CodeSaude.Domain.Entities;

namespace CodeSaude.Infrastructure.Data.EntityConfig
{
    public class MedicamentoMap : EntityTypeConfiguration<medicamento>
    {
        public MedicamentoMap()
        {
            // Primary Key
            HasKey(t => t.id_medicamento);

            // Properties
            Property(t => t.id_medicamento)
                .HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);

            Property(t => t.NOME_MEDICAMENTO)
                .IsRequired()
                .HasMaxLength(255);

            // Table & Column Mappings
            ToTable("medicamento");
            Property(t => t.id_medicamento).HasColumnName("id_medicamento");
            Property(t => t.NOME_MEDICAMENTO).HasColumnName("NOME_MEDICAMENTO");
            Property(t => t.data_criacao).HasColumnName("data_criacao");
            Property(t => t.Usuario_criacao).HasColumnName("Usuario_criacao");
            Property(t => t.data_alteracao).HasColumnName("data_alteracao");
            Property(t => t.Usuario_alteracao).HasColumnName("Usuario_alteracao");
        }
    }
}
